{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [], "toc_visible": true, "authorship_tag": "ABX9TyNmRSaRxffiZZyFTtQD/KC1", "include_colab_link": true }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" } }, "cells": [ { "cell_type": "markdown", "metadata": { "id": "view-in-github", "colab_type": "text" }, "source": [ "\"Open" ] }, { "cell_type": "markdown", "source": [ "# Finite volume methods" ], "metadata": { "id": "n_EXFXMzuYIz" } }, { "cell_type": "markdown", "source": [ "The Finite Volume Method (aka the control-volume / volume-integral approach) is a technique that focusses on the *integral* of the quantity in a *control volume* surrounding a point.\n", "\n", "This approach has advantages for conservation equations and different convergence properties for advective systems, e.g.: $\\frac{\\partial u}{\\partial t} + c \\frac{\\partial u}{\\partial x} = 0$ and is common in computational fluid dynamics codes.\n", "\n", "> Contrast this with the Finite Difference Method which focusses on writing derivatives in terms of relations to the surrounding points.\n", "\n" ], "metadata": { "id": "iGRowMuevSlg" } }, { "cell_type": "markdown", "source": [ "The control volume is constructed algorithmically through, e.g.: bisection of the lines joining nodes." ], "metadata": { "id": "tN-No0CzA3Pd" } }, { "cell_type": "markdown", "source": [ "![Screenshot 2024-11-10 162703.png](data:image/png;base64,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)" ], "metadata": { "id": "BPt4VzVG-OL0" } }, { "cell_type": "markdown", "source": [ "Many physics equations contain conservative term (divergence of a vector field $\\vec{J}$). The integral of these terms can be transformed through Green's law (divergence theorem) into surface term:\n", "\n", "$$\\int_V \\nabla \\cdot \\vec{J} dV = ∮\\vec{J}\\cdot \\hat{n} dS$$\n", "\n", "Convervation equations are very common in physics. When advection is present, the system can feature sharp gradients leading to numerical instabilities. Since Finite Volume focusses on the integral quantity (rather approximating the derivatives) it is more robust to these instabilities.\n", "\n", "Some examples of conservation equations are: " ], "metadata": { "id": "FZTv7N1_zSdU" } }, { "cell_type": "markdown", "source": [ "1. **Conservation of Mass** \n", " - **Equation**: $ \\frac{\\partial \\rho}{\\partial t} + \\nabla \\cdot (\\rho \\mathbf{v}) = 0 $ \n", " - **Conserved Term**: Mass density \\( \\rho \\) \n", " - **Description**: Mass is conserved in a closed system, meaning it cannot be created or destroyed.\n", "\n", "2. **Conservation of Momentum** \n", " - **Equation**: $ \\frac{\\partial (\\rho \\mathbf{v})}{\\partial t} + \\nabla \\cdot (\\rho \\mathbf{v} \\otimes \\mathbf{v} - \\mathbf{\\tau}) = \\mathbf{F} $ \n", " - **Conserved Term**: Linear momentum $ \\rho \\mathbf{v} $ \n", " - **Description**: The total momentum of a system remains constant unless acted on by external forces.\n", "\n", "3. **Conservation of Energy** \n", " - **Equation**: $ \\frac{\\partial E}{\\partial t} + \\nabla \\cdot (E \\mathbf{v} + \\lambda \\nabla T) = \\mathbf{v} \\cdot \\mathbf{F} $ \n", " - **Conserved Term**: Total energy \\( E \\) (including kinetic, potential, and internal energy) \n", " - **Description**: Energy within a closed system remains constant over time.\n", "\n", "5. **Conservation of Electric Charge** \n", " - **Equation**: $ \\frac{\\partial \\rho_e}{\\partial t} + \\nabla \\cdot \\mathbf{J} = 0 $ \n", " - **Conserved Term**: Electric charge \\( \\rho_e \\) \n", " - **Description**: Electric charge is conserved, meaning it cannot be created or destroyed.\n", "\n", "5. **Conservation of dilute species** \n", " - **Equation**: $ \\frac{\\partial n_i}{\\partial t} + \\nabla \\cdot (n_i \\mathbf{v} + D_i \\nabla \\mu_i) = \\dot{Q} $ \n", " - **Conserved Term**: Abundance of species $i$ $ n_i $ \n", " - **Description**: Species are conserved through convective and diffusive transport.\n" ], "metadata": { "id": "Y76SKp65Lcna" } }, { "cell_type": "markdown", "source": [ "The Finite volume method is also more flexible accounting for irregular / unstructured grids and differing materials again due to the focus on the change in integrated quantity through its surface." ], "metadata": { "id": "dGTi9z2DAXj2" } }, { "cell_type": "markdown", "source": [ "## Example: Finite volume expression" ], "metadata": { "id": "0pVQ4EMw5HnP" } }, { "cell_type": "markdown", "source": [ "Write the finite volume expression for node (4,2) for a plate with uneven mesh spacing in differing materials." ], "metadata": { "id": "KQeZqblM_S1h" } }, { "cell_type": "markdown", "source": [ "![Screenshot 2024-11-10 162826.png](data:image/png;base64,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)" ], "metadata": { "id": "i8zz5fOM-i4i" } }, { "cell_type": "markdown", "source": [ "Consider the steady state heat equation: $$ -\\nabla \\cdot \\vec{J} = 0$$ where $\\vec{J} = -\\lambda \\nabla T$ is the heat flux." ], "metadata": { "id": "SdRF4Ya3_o2F" } }, { "cell_type": "markdown", "source": [ "The control volume is around (4,2) is depicted:" ], "metadata": { "id": "IPR3nNrCAv7M" } }, { "cell_type": "markdown", "source": [ "![Screenshot 2024-11-10 163228.png](data:image/png;base64,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)" ], "metadata": { "id": "zaUczjF2_eps" } }, { "cell_type": "markdown", "source": [ "The sum of fluxes is:" ], "metadata": { "id": "MCynrVocBIAU" } }, { "cell_type": "markdown", "source": [ "$$0 = J_{left} \\frac{h}{2}\\Delta z - J_{right} \\frac{h}{2} \\Delta z + J_{lower\\ a} \\frac{h}{2} \\Delta z + J_{lower\\ b} \\frac{h}{4} \\Delta z - J_{convection} \\frac{h}{4} \\Delta z$$\n", "\n", "with\n", "\n", "$$\\begin{align}\n", "J_{left} &= - k_a \\frac{T_{42} - T_{41}}{h} \\\\\n", "J_{right}&= - k_b \\frac{T_{43} - T_{42}}{\\frac{h}{2}} \\\\\n", "J_{lower\\ a} &= - k_a \\frac{T_{42} - T_{32}}{h} \\\\\n", "J_{lower\\ b} &= - k_b \\frac{T_{42} - T_{32}}{h} \\\\\n", "J_{conv} & = h \\left(T_{amb} - T_{42} \\right)\n", "\\end{align} $$\n", "\n", "Substituting and simplifying we get:\n", "\n", "$$\n", "0 = \\Delta z \\left( -\\frac{k_a}{2} (T_{42} - T_{41}) - k_b (T_{43} - T_{42}) - \\frac{k_a}{2} (T_{42} - T_{32}) - \\frac{k_b}{4} (T_{42} - T_{32}) - \\frac{h^2}{4} (T_{amb} - T_{42}) \\right).\n", "$$\n", "\n", "which is an algabreic expression for $T_{42}$, $T_{32}$, $T_{41}$. Once constructed over all the nodes we build a linear system!\n", "\n", "Note that this look suspitiously familiar to finite difference! It is exactly finite difference for certain cases (regular square grids)." ], "metadata": { "id": "ytJfeYS25Sdb" } }, { "cell_type": "markdown", "source": [ "### Benefits\n", "- **Flexibility**: Can handle complex geometries and irregular domains.\n", "- **Conservation**: Inherently conserves quantities like mass, momentum, and energy.\n", "- **Unstructured Meshes**: Works well with both structured and unstructured meshes.\n", "- **Boundary Conditions**: Can apply boundary conditions non-invasively.\n", "- **Robustness**: Provides numerical robustness through discrete maximum (minimum) principles.\n", "\n", "### Drawbacks\n", "- **Complexity**: Implementation can be more complex compared to simpler methods like finite difference.\n", "- **Computational Cost**: Can be computationally expensive due to the need to solve large systems of equations.\n", "- **Accuracy**: May require fine meshes to achieve high accuracy, increasing computational cost.\n", "- **Numerical Diffusion**: Can introduce numerical diffusion, which may smear out sharp gradients.\n", "- **Stability**: Requires careful consideration of stability criteria, such as the CFL condition.\n" ], "metadata": { "id": "KBIseyR1Anx1" } } ] }